鼠標事件是指當使用者在執行操作時,例如移動鼠標或點擊等操作時,會有互動。例如拖拉元件等功能。
下面是當作了不一樣的鼠標事件,會列印出當前的鼠標事件。要注意每個函數的名字要打對,PySide6 才會觸發事件。
event.x()
和 event.y()
回傳的值是鼠標相對於視窗的座標from PySide6.QtWidgets import QApplication, QWidget
from PySide6.QtGui import QMouseEvent
from PySide6.QtCore import Qt
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.resize(400, 300)
def mousePressEvent(self, event: QMouseEvent):
if event.button() == Qt.LeftButton:
print("鼠標左鍵按下")
elif event.button() == Qt.RightButton:
print("鼠標右鍵按下")
def mouseReleaseEvent(self, event: QMouseEvent):
print("鼠標按鈕釋放")
def mouseMoveEvent(self, event: QMouseEvent):
print(f"鼠標移動到: ({event.x()}, {event.y()})")
def mouseDoubleClickEvent(self, event: QMouseEvent):
print("鼠標雙擊")
if __name__ == "__main__":
app = QApplication([])
window = MyWindow()
window.show()
app.exec()